package com.kurtphpr.sistema.vendas;

//import org.hibernate.SessionFactory;
//import org.hibernate.cfg.Configuration;

import org.hibernate.*;
import org.hibernate.cfg.*;

public class HibernateUtil {

	private static SessionFactory sessionFactory;

	static {
		try {
			// Create the SessionFactory from hibernate.cfg.xml
			sessionFactory = new AnnotationConfiguration().configure()
					.buildSessionFactory();
		} catch (Throwable ex) {
			// Make sure you log the exception, as it might be swallowed
			System.err.println("Initial SessionFactory creation failed." + ex);
			throw new ExceptionInInitializerError(ex);
		}
	}

	public static SessionFactory getSessionFactory() {
		if (sessionFactory == null) {
			try {
				// Create the SessionFactory from hibernate.cfg.xml
				sessionFactory = new AnnotationConfiguration().configure()
						.buildSessionFactory();
			} catch (Throwable ex) {
				// Make sure you log the exception, as it might be swallowed
				System.err.println("Initial SessionFactory creation failed."
						+ ex);
				throw new ExceptionInInitializerError(ex);
			}

		}
		return sessionFactory;
	}

}

// public class HibernateUtil {
// private static final SessionFactory session = buildSessionFactory();

// private static SessionFactory buildSessionFactory() {
// try {
// Configuration cfg = new Configuration();
// cfg.configure("hibernate.cfg.xml");
// return cfg.buildSessionFactory();

// } catch (Throwable e) {
// System.out.println("Deu pau no sistema\n" + e);
// throw new ExceptionInInitializerError();

// }
// }

// public static SessionFactory getSession() {
// return session;
// }
// }
// sessionFactory = new Configuration().configure().buildSessionFactory();
// sessionFactory = new
// AnnotationConfiguration().configure().buildSessionFactory();
